package com.example.userservice.configuration;

import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType;
import org.springframework.web.servlet.config.annotation.ContentNegotiationConfigurer;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
@EnableWebMvc
public class WebMvcConfg implements WebMvcConfigurer {

    public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {

        /* 是否通过请求Url的扩展名来决定media type */
        configurer.favorPathExtension(true)
                    /* 不检查Accept请求头 */
                .favorParameter(true)		//是否支持请求参数的方式
                .ignoreAcceptHeader(true)
                .parameterName("mediaType")
                /* 设置默认的media yype */
                .defaultContentType(MediaType.APPLICATION_JSON_UTF8)
                /* 请求以.html结尾的会被当成MediaType.TEXT_HTML*/
                .mediaType("xml", MediaType.APPLICATION_XML)
                /* 请求以.json结尾的会被当成MediaType.APPLICATION_JSON*/
                .mediaType("json", MediaType.APPLICATION_JSON);
    }
}
